-- ================================START====================================
-- Template generated from		FRAMEWORKIVY CODE GENERATOR
-- Generator Version:			<1.0.0.0>
-- Template Creation Time:		<Saturday, 13 August, 2016   12:39:28 AM>
-- Template Modification Time:	<Sunday, 4 September, 2016   12:40:01 AM>
-- Code Generation Time:		<Monday, 12 September, 2016   10:01:47 PM>
-- Workstation ID:				<PRAVESH>
-- Current system User ID:		<pravesh>
-- Entity/Table Name:			<ContentBinaryData>
-- Description:					<SQL Server Stored Procedure For Update>
-- Template File:				<IvyGodeGenDefaultTemplate V1.1.xml>

-- Please modify the generated code as per requirement.
-- This code generator is just to speed up the stereo type codes
-- Complex logic needs to be modified manually.

-- This block of comments will not be included in
-- the definition of the procedure.
-- =========================================================================

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'Ivy_ContentManagement_ContentBinaryData_Update')
	BEGIN
		DROP  Procedure  [Ivy_ContentManagement_ContentBinaryData_Update]
	END
GO

CREATE PROCEDURE [Ivy_ContentManagement_ContentBinaryData_Update]
-- =========================================================================
-- Created by				FRAMEWORKIVY CODE GENERATOR
-- Generator Version:		<1.0.0.0>
-- Template version used:   <1.0>
-- Template created by:		<Mrinmoy Das>
-- Code generated by:		<pravesh>
-- Code generation Time:	<Monday, 12 September, 2016   10:01:47 PM>
-- Entity/Table Name:		<ContentBinaryData>
-- Description:             <SQL Server Stored Procedure For Update>
-- =========================================================================
-- If Code has been MANUALLY MODIFIED then set below line to TRUE
-- CODE MANUALLY MODIFIED = FALSE
-- =========================================================================

-- Add the parameters for the stored procedure here

	(
				@ContentBinaryDataKey int = NULL, 
				@ContentKey int = NULL, 

				@ContentBinaryData varbinary(MAX) = NULL, 
				@ContentThumbnailImage varbinary(MAX) = NULL, 
				@ContentBinaryDataFileName varchar(1000) = NULL, 
				@ContentBinaryDataType varchar(1000) = NULL, 
				@ContentTotalDownloads int = NULL, 

				@Sys_ModifiedByID varchar(50) = NULL, 
				@Sys_DeleteType int = NULL, 
				@Sys_IsDeleted bit = NULL, 
				@Sys_OrganizationID int = NULL, 
				@Sys_InitialPrimaryKeys varchar(MAX) = NULL, 
				@Sys_WorkstationName varchar(50) = NULL, 

				@ConcurrencyTimeStamp datetime = NULL, 

				@Sys_DateOfModification datetime OUTPUT 
	) 
AS 
BEGIN 
	-- SET NOCOUNT OFF added to indicate how many records are updated 
	SET NOCOUNT OFF; 

	-- ConcurrencyTimeStamp is mandatory for Update Stored Procedure. 
	-- It needs to check if any other user has changed the reord or not.
	IF @ConcurrencyTimeStamp = NULL 
	BEGIN 
		RAISERROR('Missing @ConcurrencyTimeStamp', 11,1); 
	END 
	DECLARE @CurrentModificationDate datetime; 
	SET @CurrentModificationDate = 
		(SELECT [Sys_DateOfModification] FROM [ContentBinaryData] WHERE 
			( 
				[ContentBinaryDataKey] = @ContentBinaryDataKey AND 
				[ContentKey] = @ContentKey 
			) 
		); 

	If @ConcurrencyTimeStamp != @CurrentModificationDate 
	BEGIN 
		RAISERROR('Record is Changed by another process', 11,1); 
	END 

	IF @Sys_WorkstationName = 'Default' 
	BEGIN 
		SET @Sys_WorkstationName = (SELECT @@SERVERNAME); 
	END 

	SET @Sys_DateOfModification = GETDATE(); 

    UPDATE	[ContentBinaryData] 
	SET 
			[ContentBinaryData] = @ContentBinaryData, 
			[ContentThumbnailImage] = @ContentThumbnailImage, 
			[ContentBinaryDataFileName] = @ContentBinaryDataFileName, 
			[ContentBinaryDataType] = @ContentBinaryDataType, 
			[ContentTotalDownloads] = @ContentTotalDownloads, 

			[Sys_DateOfModification] = @Sys_DateOfModification, 
			[Sys_ModifiedByID] = @Sys_ModifiedByID, 
			[Sys_DeleteType] = @Sys_DeleteType, 
			[Sys_IsDeleted] = @Sys_IsDeleted, 
			[Sys_OrganizationID] = @Sys_OrganizationID, 
			[Sys_InitialPrimaryKeys] = @Sys_InitialPrimaryKeys, 
			[Sys_WorkstationName] = @Sys_WorkstationName 
	 WHERE 
		( 
			[ContentBinaryDataKey] = @ContentBinaryDataKey AND 
			[ContentKey] = @ContentKey 
		); 

END 
GO 

-- =================================END=====================================

